package com.epam.rd.myCollections.list;

import java.util.Iterator;

public interface MyList extends Iterable<Object> {

	void add(Object e);

	void add(int index, Object e);

	void addAll(Object[] c);

	void addAll(int index, Object[] c);

	Object get(int index);

	void remove(int index);

	void clear();

	boolean isEmpty();

	void set(int index, Object e);

	int indexOf(Object o);

	/**
	 * 
	 * @return size of list
	 */
	int size();

	/**
	 * Converts list into object array
	 * 
	 * @return
	 */
	Object[] toArray();

	Iterator<Object> iterator();
}
